/*
 * @Author       : Thyssen Wen
 * @Date         : 2022-09-22 13:12:19
 * @LastEditors  : Thyssen Wen
 * @LastEditTime : 2022-09-23 03:32:22
 * @Description  : IDCard Class
 * @FilePath     : /cdesign-pattern/Factory/IDCard.h
 */
#pragma once
#include <string>
#include <iostream>
#include "Product.h"

namespace idcard{
    class IDCard;
}

class idcard::IDCard: public framework::Product
{
private:
    std::string owner;
public:
    IDCard(std::string owner);
    ~IDCard();

    void use(){
        std::cout << "Use " + owner + "'s ID card." << std::endl;
    }
    std::string getOwner(){
        return owner;
    }

};

idcard::IDCard::IDCard(std::string owner)
{
    std::cout << "Create " + owner + "'s ID card." << std::endl;
    this->owner = owner;
}

idcard::IDCard::~IDCard()
{
}
